Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.08.2014, 15:57
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

помогите с return true, return false
Ребята, как мне из этого запроса
If (validate(email))
{
$.ajax({
Type: "post",
Url: "check_email.php",
Success : function (result) {
If (result ==0) { return false;}
Else { return true;}} 
});
}
на выходе получить
return true;
???
Ответить с цитированием
  #2 (permalink)  
Старый 30.08.2014, 16:05
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Я объясню. Данный код у меня проверяет емэйл
в базе и если что выводит ошибку, что такой емэйл не зарегестрирован. Но пропал вход, точнее не хватает параметра ретерн труе.
Изначально было так
If (validate(email))
{
return true;

}
Ответить с цитированием
  #3 (permalink)  
Старый 30.08.2014, 16:40
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Вы не обращайте на if. Набираю со с марафона. Суть не в этом. Почему не дает залогиниться. Ввожу емэйл, который точно есть в базе. Ошибка пропадает (что такого емэйл не существует). Вбиваю пароль и не выполняется вход. Как только убираю проверку емэйл в базе. Вход как по маслу.
Ответить с цитированием
  #4 (permalink)  
Старый 30.08.2014, 20:32
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Вот полный код проверки емайлов:
function check_email()
{
var email = $("#email").val();
    
    if (email == "")
    {
        $("#email_error").show();
        return false;
    }
    else
    {
        if (validateEmail(email))
        {
		
			$.ajax({
				type : "POST",
				url : "email_pass_check.php", // url îòïðàâëÿåì email ìåòîäîì POST
				data : "email="+ email,
				success : function(result) {
				// åñëè email â áàçå åñòü, òî îøèáêó íå âûâîäèì 
				if (result == 1) {
				$("#email_error").hide();
			    return true;
				} else {
				// åñëè email â áàçå íåò, òî âûâîäèì îøèáêó
				$("#email_error").show();
				$("#email_error").html("The email address you entered does not belong to any account. You can login using any email associated with your account. Make sure that it is typed correctly.");
				return false;
								
				}
				},
				});	
        }
        else
        {
             $("#email_error").show();
			 $("#email_error").html("Please enter an email address in the following format [email]ani@lookingschools.com[/email]");
             return false;
        }
    }
}

function validateEmail(email) {
    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    return re.test(email);
}
Ответить с цитированием
  #5 (permalink)  
Старый 30.08.2014, 20:34
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

А вот файл email_pass_check.php
include 'db.php';

if (isset($_POST['email']))
{
	$res = mysql_query("select * from users where email = '".mysql_real_escape_string($_POST['email'])."' and is_active = 1");
    if (mysql_num_rows($res) > 0)
	{
	echo 1;
	
	} else {
	
	echo 0;
	
	}

}
Ответить с цитированием
  #6 (permalink)  
Старый 30.08.2014, 20:37
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Сейчас повторяюсь, проблема в том, что залогиниться не получается. Ошибки все выводятся точно (когда нужно и где нужно, и исчезают когда нужно). А почему не заходит в админку не понимаю. Помогите.
Ответить с цитированием
  #7 (permalink)  
Старый 30.08.2014, 20:39
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Могу скинуть код скрипта, где не было ajax проверки email в базе и все логинилось.
Ответить с цитированием
  #8 (permalink)  
Старый 30.08.2014, 21:55
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Вот без ajax проверки. Залогиниться могу
function check_email()
{
var email = $("#email").val();
    
    if (email == "")
    {
        $("#email_error").show();
        return false;
    }
    else
    {
        if (validateEmail(email))
        {
		
			$("#email_error").hide();
			return true;
        }
        else
        {
             $("#email_error").show();
			 $("#email_error").html("Please enter an email address in the following format [email]ani@lookingschools.com[/email]");
             return false;
        }
    }
}

function validateEmail(email) {
    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    return re.test(email);
}
Ответить с цитированием
  #9 (permalink)  
Старый 30.08.2014, 21:57
Аспирант
Отправить личное сообщение для Sergei-b84 Посмотреть профиль Найти все сообщения от Sergei-b84
 
Регистрация: 26.06.2014
Сообщений: 69

Сообщение от Rise Посмотреть сообщение
Sergei-b84, где вызываешь и как check_email() ?
Вызываю так
function validate_login() {
    var submit = true;
    if (!check_email()) submit = false;
	if (!check_pass()) submit = false;
    return submit;
}
Ответить с цитированием
  #10 (permalink)  
Старый 30.08.2014, 23:18
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 457

Sergei-b84,
function check_email() {
	var email = $('#email').val();
	var error = $('#email_error');
	var rturn = false;
	if (validateEmail(email)) {
		$.ajax({
			type: 'POST',
			url: 'email_pass_check.php',
			data: { email: email },
			async: false,
			success: function(result) {
				if (+result) {
					rturn = true;
					error.hide();
				} else {
					error.show().html('The email address you entered does not belong to any account. You can login using any email associated with your account. Make sure that it is typed correctly.');
				}
			}
		});
	} else {
		error.show().html('Please enter an email address in the following format [email]ani@lookingschools.com[/email]');
	}
	return rturn;
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функция не реагирует инпут imedia Элементы интерфейса 9 22.05.2014 16:31
Jin: И снова о наследовании tenshi Ваши сайты и скрипты 16 19.08.2013 20:30
addEventListener и return false; Valdemor Общие вопросы Javascript 4 17.07.2013 11:33
регулярки: замена ссылки на ютуб Hekumok Общие вопросы Javascript 105 01.08.2012 10:48
прямые ссылки kristian Общие вопросы Javascript 1 04.03.2009 11:29